1. Field of the Invention
The invention relates in general to a network communication system and method of dynamic routing, and more particularly to a network communication system and method for efficiently determination of a message-transporting path between two hosts on the Internet. When two hosts cannot effectively connect to each other, the network communication system of the invention uses the method of dynamic routing to find the most suitable routing host.
2. Description of the Related Art
At present on the Internet, the network communication system that transports messages asynchronously (store and forward) between two hosts transport messages routinely according to either pre-built message-transporting paths or related data of network connection. The former is static routing while the latter is dynamic routing.
The network communication system transporting messages by the static routing way has to include a static routing table for recording message-transporting paths called routing paths between any two hosts on the Internet. When a sending host sends a message to a destination host, the routing path is the order of passing hosts that aid to transport messages to the destination host by storing and forwarding. When the sending host cannot directly transport messages to the destination host, the network communication system retrieves a routing path between the two hosts from a static routing table. Messages are then transported to the destination host via the order of passing hosts of the routing path.
Referring to FIG. 1, it shows a schematic diagram of a network 10. As shown in FIG. 1, there are five hosts, A, B, C, D, and E, on the network 10. According to connection relationship of any two hosts, a static routing table can be built as shown in the following Table 1.
TABLE 1Sending hostDestination hostRouting pathABACADBAECBABCA. . .. . .. . .CE. . .. . .. . .
Table 1 shows that host A cannot directly connect to host E. Therefore, when host A tries to send messages to host E, the network communication system retrieves a routing path from the Table 1. As shown in Table 1, messages of host A have to be routed by host C before arriving at host E. Accordingly, host A first routes messages to host C and then host C transports the messages to host E. However, there are generally more than one routing path between two hosts on the Internet. As shown in FIG. 1, an alternate connecting path from host A to host E is to go through host B then host D before arriving at host E. If the bandwidth between host A and host C is narrow, the transporting speed becomes slow. At this time, the alternate routing path may be faster instead. However, since this alternate path is not set in Table 1, the messages cannot be routed this way. Thus it can be seen that the static routing way is not flexible and cannot dynamically change the routing path according to practical network situation. As such, static routing cannot route messages in the optimum path and consequently is not efficient.
The network communication system transporting messages by the dynamic routing way can use pre-built related data of network connection to find a suitable message-transporting path. The network communication system has to first build the related data of network connection, such as network topology, bandwidth, or cost of connection. When a sending host tries to transport messages to a destination host, the network communication system uses an algorithm to find a suitable routing path. The algorithm can be the minimum-cost or shortest-path method. The network communication system can dynamically choose to use either method to produce different routing paths.
According to connection relationship of any two hosts on the network 10 in FIG. 1, the network communication system can build related data of network connection between any two hosts shown in the following Table 2.
TABLE 2HostHostBandwidthCostAB10Mbps1AC64Kbps3BD1Mbps2CD10Mbps1CE1Mbps2DE10Mbps1
The data established in Table 2 is a network topology, i.e. connection relationship between any adjacent hosts. The bandwidth of network connection of any adjacent hosts are built in Table 2 and the costs are defined according to the bandwidth. The higher the cost is, the longer the transporting time is. Likewise, the lower the cost is, the faster the speed of network transportation is and the shorter the transporting time is. The network communication system transporting messages by the dynamic routing way has to pre-build a table of network connection, such as Table 2.
Table 2 shows that host A and host E cannot directly build a connection. Accordingly, when the sending host A tries to transport messages to the destination host E, the network communication system first retrieves a message-transporting path from Table 2. The method of selecting a routing path can be based on practical network situation to find a suitable routing path. In general, the method of selecting a routing path is either the minimum-cost or shortest-path method. The shortest path is a path with minimum routing hosts between the sending host to the destination host. If the shortest-path method is used, the routing is only through host C. However, the cost of this routing path is five. If the minimum cost method is used, the routing path through hosts B and then D is selected since the cost is only four. As a result, when routing messages, it is a property of dynamic routing that the network communication system can select an algorithm to determine a suitable routing path according to practical network situation.
However, regardless of which, static or dynamic, routing is in operation, related data of network connection, such as Tables 1 and 2, have to be pre-built by network administrators. Two disadvantages to this are:
(1) The network communication system cannot automatically and efficiently react to the changing network situations in time (i.e. increase of bandwidth, network disconnections, and/or breakdown of hosts).
(2) The workload of network administrators increases when the network situations change.